/*******************************************************************************
* nemesis. an experimental finite element code.                                *
* Copyright (C) 2004-2011 F.E.Karaoulanis [http://www.nemesis-project.org]     *
*                                                                              *
* This program is free software; you can redistribute it and/or modify         *
* it under the terms of the GNU General Public License version 3, as           *
* published by the Free Software Foundation.                                   *
*                                                                              *
* This program is distributed in the hope that it will be useful,              *
* but WITHOUT ANY WARRANTY; without even the implied warranty of               *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                *
* GNU General Public License for more details.                                 *
*                                                                              *
* You should have received a copy of the GNU General Public License            *
* along with this program.  If not, see < http://www.gnu.org/licenses/>.       *
*******************************************************************************/

// *****************************************************************************
// $LastChangedDate$
// $LastChangedRevision$
// $LastChangedBy$
// $HeadURL$
// Author(s): F.E. Karaoulanis (fkar@nemesis-project.org)
// *****************************************************************************

#ifndef SRC_MATERIAL_EVOLUTION_LAW_H_
#define SRC_MATERIAL_EVOLUTION_LAW_H_

#include "numeric/vector.h"

/**
 * The Evolution Law Class.
 */
class EvolutionLaw {
 public:
  EvolutionLaw();
  virtual ~EvolutionLaw();

  virtual double get_h(const Vector& v)=0;
  virtual double get_dhds(const Vector& sTrial, const Vector& ePTrial)=0;
  virtual double get_dhda(const Vector& sTrial, const Vector& ePTrial)=0;
};
#endif  // SRC_MATERIAL_EVOLUTION_LAW_H_
